package com.william.jdbcplus.boot.test.dao;

import com.william.jdbcplus.boot.test.entity.SysMenu;
import com.william.jdbcplus.boot.test.vo.TreeVO;

import java.util.List;

/**
 * <p>
 * 菜单权限表 Mapper 接口
 * </p>
 *
 * @Author scott
 * @since 2018-12-21
 */
public interface SysMenuDao {
    /**
     * 通过父菜单ID查询子菜单
     *
     * @param parentId
     * @return
     */
    List<TreeVO> queryListByParentId(String parentId);

    /**
     * 根据用户查询用户权限
     */
    List<SysMenu> queryByUser(String username);

    /**
     * 修改菜单状态字段： 是否子节点
     */
    int setMenuLeaf(String id, int leaf);

    /**
     * 获取模糊匹配规则的数据权限URL
     */
    List<String> queryPermissionUrlWithStar();


    /**
     * 根据用户账号查询菜单权限
     *
     * @param sysMenu
     * @param username
     * @return
     */
    int queryCountByUsername(String username, SysMenu sysMenu);


}